Creative Commons License
MSGSU ISTATISTIK BOLUMU - R ILE ISTATISTIKSEL PROGRAMLAMA DERS NOTLARI by is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Hata ve öneriler için emoji::("email")


1 R graphical systems

The most important feature of the R graphics setup is the existence of two distinct graphics systems within R:

1 . Traditional graphics system : High level functions

library(graphics)

2 . Grid graphics system : Unique to R and is much more powerful than the traditional system. Low level functions

library(grid)
# Deepayan Sarkar’s lattice package, based on Bill Cleveland’s Trellis graphics paradigm.
library(lattice) 
# Hadley Wickhams’ ggplot2, based on Leland Wilkinson’s Grammar of Graphics paradigm. 
library(ggplot2)

Underlying both traditional and grid graphics systems is a graphics engine, which represents a common set of fundamental graphics facilities, such as color management and support for different graphical output formats.

  • plot() function is a “smart” (generic) command. It means that plot() “understands” the type of the supplied object, and draws accordingly.
# vector
plot(mtcars$disp)

# data.frame
plot(mtcars)

# model
plot(lm(mtcars$mpg ~ mtcars$disp, data=mtcars))

plot(mtcars$disp, type="n")
mtext("Title", line=1.5, font=2)
points(mtcars$disp)
legend("topleft", pch=1, legend="My wonderful points")

1.1 important high-level plotting functions

  • plot: generic x-y plotting
  • barplot: bar plots
  • boxplot: box-and-whisker plot
  • hist: histograms
  • pie: pie charts
  • dotchart: cleveland dot plots
  • image, heatmap, contour, persp: functions to generate image-like plots
  • qqnorm, qqline, qqplot: distribution comparison plots * pairs, coplot: display of multivariant data Help on these functions
  • ?myfct
  • ?par

1.2 Graphical devices

When you enter plot(), R opens screen graphical device and starts to draw there.

If the next command is of the same type, R will erase the content of the device and start the new plot.

If the next command is the “adding” one, like text(), R will add something to the existing plot.

If the next command is dev.off(), R will close the device.

When needed more than one graphical window, open additional device with dev.new()

png(file="deneme.png", bg="transparent") 
# pdf(file="deneme.pdf", width=8) # default 7 inch
# svg(file="deneme.svg")
plot(1:20)
text(10, 20, "a")
dev.off()
## quartz_off_screen 
##                 2

basic graphics for 1 variable

basic graphics for 2 variables

basic graphics for multi variables

1.3 Basic arguments for plot()

type

  • type: “p” for points,
  • “l” for lines,
  • “b” for both,
  • “c” for the lines part alone of “b”,
  • “o” for both ‘overplotted’,
  • “h” for ‘histogram’ like (or ‘high-density’) vertical lines,
  • “s” for stair steps,
  • “n” for no plotting.
plot(mtcars$mpg) #vector

plot(mtcars$mpg,type="p")

plot(mtcars$mpg,type="l")

point types : pch

  • pch : 1 - 25 ,
  • 21 ve 25 arasi col: border, bg: fill rengi belirler, * farklı semboller icin “”

plot(mtcars$mpg, type="p",pch=8)

plot(mtcars$mpg, type="p",pch=19)

plot(mtcars$mpg,
     type="p",pch=22,col="blue",bg="red")

plot(mtcars$mpg,
     type="p",pch="R")

color

We can specify the colors through names (or index numbers), hexadecimal, rgb, hsv * Names - col=“red” or 558 * Hex - col=“#FFFFFF” * rgb - col=rgb(1,3,1) * hsv - col=hsv(0,0,3)

col - for specifying the default plotting color. col=c(“red”,“blue”,“green”) * col.axis:* color for the axis text * col.lab:* color for the axis label * col.main:* color of the main title * col.sub:* color of the subtitle * fg:* color of the foreground * bg:* color of the background

colors() # 657 renk colours()
##   [1] "white"                "aliceblue"            "antiquewhite"        
##   [4] "antiquewhite1"        "antiquewhite2"        "antiquewhite3"       
##   [7] "antiquewhite4"        "aquamarine"           "aquamarine1"         
##  [10] "aquamarine2"          "aquamarine3"          "aquamarine4"         
##  [13] "azure"                "azure1"               "azure2"              
##  [16] "azure3"               "azure4"               "beige"               
##  [19] "bisque"               "bisque1"              "bisque2"             
##  [22] "bisque3"              "bisque4"              "black"               
##  [25] "blanchedalmond"       "blue"                 "blue1"               
##  [28] "blue2"                "blue3"                "blue4"               
##  [31] "blueviolet"           "brown"                "brown1"              
##  [34] "brown2"               "brown3"               "brown4"              
##  [37] "burlywood"            "burlywood1"           "burlywood2"          
##  [40] "burlywood3"           "burlywood4"           "cadetblue"           
##  [43] "cadetblue1"           "cadetblue2"           "cadetblue3"          
##  [46] "cadetblue4"           "chartreuse"           "chartreuse1"         
##  [49] "chartreuse2"          "chartreuse3"          "chartreuse4"         
##  [52] "chocolate"            "chocolate1"           "chocolate2"          
##  [55] "chocolate3"           "chocolate4"           "coral"               
##  [58] "coral1"               "coral2"               "coral3"              
##  [61] "coral4"               "cornflowerblue"       "cornsilk"            
##  [64] "cornsilk1"            "cornsilk2"            "cornsilk3"           
##  [67] "cornsilk4"            "cyan"                 "cyan1"               
##  [70] "cyan2"                "cyan3"                "cyan4"               
##  [73] "darkblue"             "darkcyan"             "darkgoldenrod"       
##  [76] "darkgoldenrod1"       "darkgoldenrod2"       "darkgoldenrod3"      
##  [79] "darkgoldenrod4"       "darkgray"             "darkgreen"           
##  [82] "darkgrey"             "darkkhaki"            "darkmagenta"         
##  [85] "darkolivegreen"       "darkolivegreen1"      "darkolivegreen2"     
##  [88] "darkolivegreen3"      "darkolivegreen4"      "darkorange"          
##  [91] "darkorange1"          "darkorange2"          "darkorange3"         
##  [94] "darkorange4"          "darkorchid"           "darkorchid1"         
##  [97] "darkorchid2"          "darkorchid3"          "darkorchid4"         
## [100] "darkred"              "darksalmon"           "darkseagreen"        
## [103] "darkseagreen1"        "darkseagreen2"        "darkseagreen3"       
## [106] "darkseagreen4"        "darkslateblue"        "darkslategray"       
## [109] "darkslategray1"       "darkslategray2"       "darkslategray3"      
## [112] "darkslategray4"       "darkslategrey"        "darkturquoise"       
## [115] "darkviolet"           "deeppink"             "deeppink1"           
## [118] "deeppink2"            "deeppink3"            "deeppink4"           
## [121] "deepskyblue"          "deepskyblue1"         "deepskyblue2"        
## [124] "deepskyblue3"         "deepskyblue4"         "dimgray"             
## [127] "dimgrey"              "dodgerblue"           "dodgerblue1"         
## [130] "dodgerblue2"          "dodgerblue3"          "dodgerblue4"         
## [133] "firebrick"            "firebrick1"           "firebrick2"          
## [136] "firebrick3"           "firebrick4"           "floralwhite"         
## [139] "forestgreen"          "gainsboro"            "ghostwhite"          
## [142] "gold"                 "gold1"                "gold2"               
## [145] "gold3"                "gold4"                "goldenrod"           
## [148] "goldenrod1"           "goldenrod2"           "goldenrod3"          
## [151] "goldenrod4"           "gray"                 "gray0"               
## [154] "gray1"                "gray2"                "gray3"               
## [157] "gray4"                "gray5"                "gray6"               
## [160] "gray7"                "gray8"                "gray9"               
## [163] "gray10"               "gray11"               "gray12"              
## [166] "gray13"               "gray14"               "gray15"              
## [169] "gray16"               "gray17"               "gray18"              
## [172] "gray19"               "gray20"               "gray21"              
## [175] "gray22"               "gray23"               "gray24"              
## [178] "gray25"               "gray26"               "gray27"              
## [181] "gray28"               "gray29"               "gray30"              
## [184] "gray31"               "gray32"               "gray33"              
## [187] "gray34"               "gray35"               "gray36"              
## [190] "gray37"               "gray38"               "gray39"              
## [193] "gray40"               "gray41"               "gray42"              
## [196] "gray43"               "gray44"               "gray45"              
## [199] "gray46"               "gray47"               "gray48"              
## [202] "gray49"               "gray50"               "gray51"              
## [205] "gray52"               "gray53"               "gray54"              
## [208] "gray55"               "gray56"               "gray57"              
## [211] "gray58"               "gray59"               "gray60"              
## [214] "gray61"               "gray62"               "gray63"              
## [217] "gray64"               "gray65"               "gray66"              
## [220] "gray67"               "gray68"               "gray69"              
## [223] "gray70"               "gray71"               "gray72"              
## [226] "gray73"               "gray74"               "gray75"              
## [229] "gray76"               "gray77"               "gray78"              
## [232] "gray79"               "gray80"               "gray81"              
## [235] "gray82"               "gray83"               "gray84"              
## [238] "gray85"               "gray86"               "gray87"              
## [241] "gray88"               "gray89"               "gray90"              
## [244] "gray91"               "gray92"               "gray93"              
## [247] "gray94"               "gray95"               "gray96"              
## [250] "gray97"               "gray98"               "gray99"              
## [253] "gray100"              "green"                "green1"              
## [256] "green2"               "green3"               "green4"              
## [259] "greenyellow"          "grey"                 "grey0"               
## [262] "grey1"                "grey2"                "grey3"               
## [265] "grey4"                "grey5"                "grey6"               
## [268] "grey7"                "grey8"                "grey9"               
## [271] "grey10"               "grey11"               "grey12"              
## [274] "grey13"               "grey14"               "grey15"              
## [277] "grey16"               "grey17"               "grey18"              
## [280] "grey19"               "grey20"               "grey21"              
## [283] "grey22"               "grey23"               "grey24"              
## [286] "grey25"               "grey26"               "grey27"              
## [289] "grey28"               "grey29"               "grey30"              
## [292] "grey31"               "grey32"               "grey33"              
## [295] "grey34"               "grey35"               "grey36"              
## [298] "grey37"               "grey38"               "grey39"              
## [301] "grey40"               "grey41"               "grey42"              
## [304] "grey43"               "grey44"               "grey45"              
## [307] "grey46"               "grey47"               "grey48"              
## [310] "grey49"               "grey50"               "grey51"              
## [313] "grey52"               "grey53"               "grey54"              
## [316] "grey55"               "grey56"               "grey57"              
## [319] "grey58"               "grey59"               "grey60"              
## [322] "grey61"               "grey62"               "grey63"              
## [325] "grey64"               "grey65"               "grey66"              
## [328] "grey67"               "grey68"               "grey69"              
## [331] "grey70"               "grey71"               "grey72"              
## [334] "grey73"               "grey74"               "grey75"              
## [337] "grey76"               "grey77"               "grey78"              
## [340] "grey79"               "grey80"               "grey81"              
## [343] "grey82"               "grey83"               "grey84"              
## [346] "grey85"               "grey86"               "grey87"              
## [349] "grey88"               "grey89"               "grey90"              
## [352] "grey91"               "grey92"               "grey93"              
## [355] "grey94"               "grey95"               "grey96"              
## [358] "grey97"               "grey98"               "grey99"              
## [361] "grey100"              "honeydew"             "honeydew1"           
## [364] "honeydew2"            "honeydew3"            "honeydew4"           
## [367] "hotpink"              "hotpink1"             "hotpink2"            
## [370] "hotpink3"             "hotpink4"             "indianred"           
## [373] "indianred1"           "indianred2"           "indianred3"          
## [376] "indianred4"           "ivory"                "ivory1"              
## [379] "ivory2"               "ivory3"               "ivory4"              
## [382] "khaki"                "khaki1"               "khaki2"              
## [385] "khaki3"               "khaki4"               "lavender"            
## [388] "lavenderblush"        "lavenderblush1"       "lavenderblush2"      
## [391] "lavenderblush3"       "lavenderblush4"       "lawngreen"           
## [394] "lemonchiffon"         "lemonchiffon1"        "lemonchiffon2"       
## [397] "lemonchiffon3"        "lemonchiffon4"        "lightblue"           
## [400] "lightblue1"           "lightblue2"           "lightblue3"          
## [403] "lightblue4"           "lightcoral"           "lightcyan"           
## [406] "lightcyan1"           "lightcyan2"           "lightcyan3"          
## [409] "lightcyan4"           "lightgoldenrod"       "lightgoldenrod1"     
## [412] "lightgoldenrod2"      "lightgoldenrod3"      "lightgoldenrod4"     
## [415] "lightgoldenrodyellow" "lightgray"            "lightgreen"          
## [418] "lightgrey"            "lightpink"            "lightpink1"          
## [421] "lightpink2"           "lightpink3"           "lightpink4"          
## [424] "lightsalmon"          "lightsalmon1"         "lightsalmon2"        
## [427] "lightsalmon3"         "lightsalmon4"         "lightseagreen"       
## [430] "lightskyblue"         "lightskyblue1"        "lightskyblue2"       
## [433] "lightskyblue3"        "lightskyblue4"        "lightslateblue"      
## [436] "lightslategray"       "lightslategrey"       "lightsteelblue"      
## [439] "lightsteelblue1"      "lightsteelblue2"      "lightsteelblue3"     
## [442] "lightsteelblue4"      "lightyellow"          "lightyellow1"        
## [445] "lightyellow2"         "lightyellow3"         "lightyellow4"        
## [448] "limegreen"            "linen"                "magenta"             
## [451] "magenta1"             "magenta2"             "magenta3"            
## [454] "magenta4"             "maroon"               "maroon1"             
## [457] "maroon2"              "maroon3"              "maroon4"             
## [460] "mediumaquamarine"     "mediumblue"           "mediumorchid"        
## [463] "mediumorchid1"        "mediumorchid2"        "mediumorchid3"       
## [466] "mediumorchid4"        "mediumpurple"         "mediumpurple1"       
## [469] "mediumpurple2"        "mediumpurple3"        "mediumpurple4"       
## [472] "mediumseagreen"       "mediumslateblue"      "mediumspringgreen"   
## [475] "mediumturquoise"      "mediumvioletred"      "midnightblue"        
## [478] "mintcream"            "mistyrose"            "mistyrose1"          
## [481] "mistyrose2"           "mistyrose3"           "mistyrose4"          
## [484] "moccasin"             "navajowhite"          "navajowhite1"        
## [487] "navajowhite2"         "navajowhite3"         "navajowhite4"        
## [490] "navy"                 "navyblue"             "oldlace"             
## [493] "olivedrab"            "olivedrab1"           "olivedrab2"          
## [496] "olivedrab3"           "olivedrab4"           "orange"              
## [499] "orange1"              "orange2"              "orange3"             
## [502] "orange4"              "orangered"            "orangered1"          
## [505] "orangered2"           "orangered3"           "orangered4"          
## [508] "orchid"               "orchid1"              "orchid2"             
## [511] "orchid3"              "orchid4"              "palegoldenrod"       
## [514] "palegreen"            "palegreen1"           "palegreen2"          
## [517] "palegreen3"           "palegreen4"           "paleturquoise"       
## [520] "paleturquoise1"       "paleturquoise2"       "paleturquoise3"      
## [523] "paleturquoise4"       "palevioletred"        "palevioletred1"      
## [526] "palevioletred2"       "palevioletred3"       "palevioletred4"      
## [529] "papayawhip"           "peachpuff"            "peachpuff1"          
## [532] "peachpuff2"           "peachpuff3"           "peachpuff4"          
## [535] "peru"                 "pink"                 "pink1"               
## [538] "pink2"                "pink3"                "pink4"               
## [541] "plum"                 "plum1"                "plum2"               
## [544] "plum3"                "plum4"                "powderblue"          
## [547] "purple"               "purple1"              "purple2"             
## [550] "purple3"              "purple4"              "red"                 
## [553] "red1"                 "red2"                 "red3"                
## [556] "red4"                 "rosybrown"            "rosybrown1"          
## [559] "rosybrown2"           "rosybrown3"           "rosybrown4"          
## [562] "royalblue"            "royalblue1"           "royalblue2"          
## [565] "royalblue3"           "royalblue4"           "saddlebrown"         
## [568] "salmon"               "salmon1"              "salmon2"             
## [571] "salmon3"              "salmon4"              "sandybrown"          
## [574] "seagreen"             "seagreen1"            "seagreen2"           
## [577] "seagreen3"            "seagreen4"            "seashell"            
## [580] "seashell1"            "seashell2"            "seashell3"           
## [583] "seashell4"            "sienna"               "sienna1"             
## [586] "sienna2"              "sienna3"              "sienna4"             
## [589] "skyblue"              "skyblue1"             "skyblue2"            
## [592] "skyblue3"             "skyblue4"             "slateblue"           
## [595] "slateblue1"           "slateblue2"           "slateblue3"          
## [598] "slateblue4"           "slategray"            "slategray1"          
## [601] "slategray2"           "slategray3"           "slategray4"          
## [604] "slategrey"            "snow"                 "snow1"               
## [607] "snow2"                "snow3"                "snow4"               
## [610] "springgreen"          "springgreen1"         "springgreen2"        
## [613] "springgreen3"         "springgreen4"         "steelblue"           
## [616] "steelblue1"           "steelblue2"           "steelblue3"          
## [619] "steelblue4"           "tan"                  "tan1"                
## [622] "tan2"                 "tan3"                 "tan4"                
## [625] "thistle"              "thistle1"             "thistle2"            
## [628] "thistle3"             "thistle4"             "tomato"              
## [631] "tomato1"              "tomato2"              "tomato3"             
## [634] "tomato4"              "turquoise"            "turquoise1"          
## [637] "turquoise2"           "turquoise3"           "turquoise4"          
## [640] "violet"               "violetred"            "violetred1"          
## [643] "violetred2"           "violetred3"           "violetred4"          
## [646] "wheat"                "wheat1"               "wheat2"              
## [649] "wheat3"               "wheat4"               "whitesmoke"          
## [652] "yellow"               "yellow1"              "yellow2"             
## [655] "yellow3"              "yellow4"              "yellowgreen"
plot(mtcars$mpg,
     type="p",pch=19,col="red")

plot(mtcars$mpg,
     type="p",pch=19,col="27")

plot(mtcars$mpg,
     type="p",pch=19,col="red", fg="blue")

plot(mtcars$mpg,
     type="p",pch=19,col="blue")

size: cex

  • cex number: indicating the amount by which plotting text and symbols should be scaled relative to the default. 1=default, 1.5 is 50% larger, 0.5 is 50% smaller, etc.
  • cex.axis: magnification of axis annotation relative to cex
  • cex.lab: magnification of x and y labels relative to cex
  • cex.main: magnification of titles relative to cex
  • cex.sub: magnification of subtitles relative to
plot(mtcars$mpg,type="p",
     pch=19,col="red",cex=1)

plot(mtcars$mpg,type="p",
     pch=19,col="red",cex=2)

line type: lyt

  • 1 : solid
  • 2 : dashed
  • 3 : dotted
  • 4 : dotdash
  • 5 : longdash
  • 6 : twodash
plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=2)

plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=4)

lwd The width of lines is specified by a simple numeric value, e.g., lwd=3. This value is a multiple of 1/96 inch, with a lower limit of 1 pixel on some screen devices. The default value is 1. lwd : line width relative to the default (default=1). 2 is twice as wide

plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=2,lwd=2) 

plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=2,lwd=4)

box type : bty - o : default - l - 7 - c - u - ]

plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=2,lwd=3,
     bty="u")

plot(mtcars$mpg,type="l",pch=19,
     col="red",cex=2, lty=2,lwd=3,
     bty="7")

plot(mtcars$mpg,type="l",pch=19,col="red",cex=2, lty=2,lwd=3,
     main="GRAFIK BASLIGI", 
     xlab = "X EKSENI", ylab = "Y EKSENI",
     col.main="blue", 
     col.lab="darkgreen", 
     cex.main=3, # baslik buyuklugu
     cex.lab=1.5, # eksen isim buyuklugu
     xlim = c(0,50), # x eksen genisligi
     ylim=c(5,40) # y eksen genisligi
     ) 

?par # for more graphical parameters

par(mfrow=c(2,2))
plot(mtcars$mpg, type="p",pch=19,col="red", main="A")
plot(mtcars$mpg, type="p",pch=19,col="blue", main = "B")
plot(mtcars$mpg, type="p",pch=19, col="darkgreen", main = "C")
plot(mtcars$mpg, type="p",pch=19, col="orange", main = "D")

1.4 Bar plot

  • cubuk grafik
  • simple
  • stacked
  • grouped

simple bar plot

counts1<-table(mtcars$gear)
counts1
## 
##  3  4  5 
## 15 12  5
barplot(counts1, main="Simple Bar Plot")

Simple Bar Plot with Labels + color

barplot(counts1, main="Simple Bar Plot",xlab="Gear", ylab="Frequency") # add axis labels

barplot(counts1, main="Simple Bar Plot",
        xlab="Gear", 
        ylab="Frequency",
        col="lightblue") # add color

barplot(counts1, main="Simple Bar Plot",
        xlab="Gear", 
        ylab="Frequency",
        col= hcl(seq(0, 240, by = 60))) # tricolored

barplot(counts1, main="Simple Bar Plot",
        xlab="Gear", ylab="Frequency",
        names.arg=c("3 Gear", "4 Gear", "5 Gear")) #change labels

simple horizontal bar plot

barplot(counts1, main="Treatment Outcome",
        horiz=TRUE, cex.names=0.8,
        cex.main=1.5, las=1,xlim= c(0,50),
        names.arg=c("3 Gear", "4 Gear","5 Gear"))

barplot(counts1, main="Simple Horizontal Bar Plot",xlab="Improvement", 
        ylab="Frequency",horiz=T,col=hcl(seq(0, 240, by = 60))) 

If the categorical variable to be plotted is a factor or ordered factor, you can create a vertical bar plot quickly with the plot() function.

mtcars1<-mtcars
mtcars1$gear<-as.factor(mtcars$gear)
str(mtcars1)
## 'data.frame':    32 obs. of  11 variables:
##  $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
##  $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
##  $ disp: num  160 160 108 258 360 ...
##  $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
##  $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
##  $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
##  $ qsec: num  16.5 17 18.6 19.4 17 ...
##  $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
##  $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
##  $ gear: Factor w/ 3 levels "3","4","5": 2 2 2 1 1 1 1 2 2 2 ...
##  $ carb: num  4 4 1 1 2 1 4 2 2 4 ...
plot(mtcars1$gear, main="Simple Bar Plot", xlab="Improved", ylab="Frequency")

stacked bar plot

counts2 <- table(mtcars$vs, mtcars$gear)
counts2
##    
##      3  4  5
##   0 12  2  4
##   1  3 10  1
barplot(counts2, main="Stacked Bar Plot",
        xlab="GEAR", col=c("darkblue","red"),
        legend = rownames(counts2)) 

legend adjustment ref

grouped bar plot

barplot(counts2, main="Grouped Bar Plot",
        xlab="Gear", ylab="Frequency",
        col=c("darkblue","red"), beside=TRUE)
legend("topleft", legend=rownames(counts2), 
       fill=c("darkblue","red"), horiz=FALSE, title="VS")

  • legend x,y :bottomright”, “bottom”, “bottomleft”, “left”, “topleft”,
  • “top”, “topright”, “right”, “center”
  • ?legend for more
barplot(counts2, main="Grouped Bar Plot",
        xlab="Gear", ylab="Frequency",
        col=c("darkblue","red"), beside=TRUE, legend.text=c("no vs","1 vs")) # legend text

Spinograms

# vcd::spine
# graphics:spineplot
counts2
##    
##      3  4  5
##   0 12  2  4
##   1  3 10  1
vcd::spine(counts2, main = "Spinogram")

graphics::spineplot(counts2, main = "Spinogram")

1.5 histogram

hist(mtcars$mpg, breaks = "Sturges")

hist(mtcars$mpg, breaks = "Scott")

hist(mtcars$mpg, breaks = "FD") # = "Freedman-Diaconis"

hist(mtcars$mpg, col = "steelblue",breaks = 30)

tit="Galon Başına Mil Histogramı"
xl= "Galon  Başına Mil"
yl="Frekans"
hist(mtcars$mpg, main = tit, xlab = xl, ylab = yl, 
     col = "orange", border = " red", col.lab= " blue")

plot(density(mtcars$mpg), frame = FALSE, col = "steelblue", main = "Density plot of mpg")
# Compute the density data
dens <- density(mtcars$mpg)
# plot density

# Fill the density plot using polygon()
plot(density(mtcars$mpg), frame = FALSE, col = "steelblue", 
     main = "Density plot of mpg") 
polygon(density(mtcars$mpg), col = "steelblue")

library(MASS)
MASS::truehist(mtcars$mpg)

1.6 boxplot

boxplot(mtcars$mpg)

boxplot(mtcars$mpg,horizontal = TRUE)

boxplot(mtcars$mpg, notch = TRUE) 

# In the notched boxplot, if two boxes' notches do not overlap this 
# is ‘strong evidence’ their medians differ
boxplot(mpg~cyl,data = mtcars, main = "Silindire göre mil",
           xlab = "Silindir sayısı", ylab = "Mil", varwidth=TRUE) 

# make boxplot widths proportional to the square root of the samples sizes

par(mfrow=c(2,1))
boxplot(mpg~cyl, data = mtcars, varwidth = FALSE)
boxplot(mpg~cyl, data = mtcars, varwidth = TRUE) 

boxplot(mpg~cyl,data = mtcars, varwidth = TRUE, horizontal = TRUE)

1.7 Pie charts

pie(counts1)

pie(counts1, labels = c("A","B","C")) # add labels

library(plotrix)
x = c(30,25,28,10,7)
lbl = c("A","B","C","D","E")
plotrix::fan.plot(x, labels = lbl, col = rainbow(5),ticks = 30, main = "Fan Plot")

fancol = c("burlywood","turquoise","firebrick","gold3","green4")

#compare with pie
pie(x,labels=lbl,col=fancol)

plotrix::fan.plot(x, labels = lbl, col = fancol,ticks = 180,max.span=pi, main = "Fan Plot") # maximum span <= 2*pi

1.8 violin plot

# library(vioplot)
x1 <- mtcars$mpg[mtcars$cyl==4]
x2 <- mtcars$mpg[mtcars$cyl==6]
x3 <- mtcars$mpg[mtcars$cyl==8]
vioplot::vioplot(x1, x2, x3, names=c("4 cyl", "6 cyl", "8 cyl"), col="green")

#title("Violin Plot")
# box vs violin
par(mfrow=c(2,1))
mu<-2
si<-0.6
bimodal<-c(rnorm(1000,-mu,si),rnorm(1000,mu,si))
uniform<-runif(2000,-4,4)
normal<-rnorm(2000,0,3)
#vioplot::vioplot(bimodal,uniform,normal)
boxplot(bimodal,uniform,normal)

1.9 scatterplot

plot(mtcars$wt, mtcars$mpg, type= "p", col= "red", 
     main="Scatterplot Örneği", 
     xlab="Araç Ağırlığı", ylab="Galon Başına Mil", pch=24)

# fit line
linreg<-lm(mpg~wt, data = mtcars)
plot(mtcars$wt, mtcars$mpg)
abline(linreg, col = "red") 
# regression line (y~x) 
lines(lowess(mtcars$wt,mtcars$mpg), col="blue") 

# lowess line (x,y) 

# pairs
pairs(~mpg + disp + drat + wt, data = mtcars, 
      main=" Scatterplot Matrisi")

# par()

par(mfrow=c(2,2)) # mfrow, mfcol
plot(mtcars$wt,mtcars$mpg, main="Scatterplot of wt vs. mpg")
plot(mtcars$wt,mtcars$disp, main="Scatterplot of wt vs disp")
hist(mtcars$wt, main="Histogram of wt")
boxplot(mtcars$wt, main="Boxplot of wt")

# layout

layout(matrix(c(1,1,2,3), 2, 2, byrow = TRUE))
hist(mtcars$wt)
hist(mtcars$mpg)
hist(mtcars$disp)


Creative Commons License
OYKK2020-R ile Veri Önişleme by is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.